<template>
  <view class="content">
    <view class="header">
      <image :src="userinfowx.avatarUrl"></image>

    </view>
    <view style="height: 100upx;line-height: 100upx; text-align: center;">
      <text style="font-size: 36upx; text-align: center;">{{userinfowx.nickName}}</text>
    </view>
    <!-- #ifndef MP-WEIXIN -->
    <view class="list">
      <view class="list-call">
        <image class="img" src="/static/shilu-login/1.png"></image>
        <input class="sl-input" v-model="mobile" type="number" maxlength="11" placeholder="输入手机号" />
      </view>
      <view class="list-call">
        <image class="img" src="/static/shilu-login/2.png"></image>
        <input class="sl-input" v-model="password" type="text" maxlength="32" placeholder="输入密码" password="true" />
      </view>
    </view>
    <view class="button-login" hover-class="button-hover" @tap="bindLogin()">
      <text style="font-size: 40upx;">登录</text>
    </view>
    <view class="agreenment">
      <navigator url="reg" open-type="navigate">注册账户</navigator>
    </view>
    <!-- #endif -->
    <!-- #ifdef MP-WEIXIN -->
    <view style="margin-top: 50px;">
      <button class="button-login1" v-if="dltel==1" open-type="getPhoneNumber" style="font-size: 26upx; color: #ffffff;"
        @getphonenumber="onGetPhoneNumber">登录</button>
      <button class="button-login1" v-else @click="Loginops()" style="font-size: 26upx; color: #ffffff;">登录</button>
    </view>
    <!-- #endif -->
  </view>
</template>

<script>
  export default {
    data() {
      return {
        mobile: '',
        password: '',
        openid: '',
        userinfowx: '',
        fxpid: '',
        dltel: '',
      };
    },
    onLoad(e) {
      if (e.dltel) {
        this.dltel = e.dltel
      }
      if (e.fxpid) {
        this.fxpid = e.fxpid
      } else {
        if (uni.getStorageSync("fxpid")) {
          this.fxpid = uni.getStorageSync("fxpid")
        }
      }
      this.userinfowx = uni.getStorageSync("userinfowx")
      console.log('fffffffffffffffff',this.fxpid);

    },
    methods: {
      dyxx() {

      },
      async bindLogin() {

        let _this = this
        if (!this.mobile) {
          uni.showToast({
            title: '手机号不能为空',
            icon: "none"
          });
          this.userfocus = true
          return false;
        }
        if (!this.password) {
          uni.showToast({
            title: '密码不能为空',
            icon: "none"
          });
          this.paswfocus = true
          return false;
        }
        let data = {
          'account': this.mobile,
          'password': this.password
        };
        // #ifdef APP-PLUS
        var inf = plus.push.getClientInfo();
        if (inf.clientid) {
          data.clientid = inf.clientid
        }
        if (plus.os.name == 'iOS') {
          data.iostoken = inf.token
        }
        data.issb = plus.os.name
        // #endif

        if (this.openid) {
          data.openid = this.openid;
        }
        let [err, res] = await this.$httpas.get('/api/user/login', data);

        if (!this.$httpas.errorCheck(err, res)) return;

        if (res.data.code === 1) {
          if (res.data.data.userinfo.avatar) {
            var str = res.data.data.userinfo.avatar;
            if (str.indexOf("data:image") != -1) {
              var avatar = '';
            } else {
              if (str.indexOf("http") != -1) {
                avatar = res.data.data.userinfo.avatar;
              } else {
                avatar = this.configs.imgUrl + res.data.data.userinfo.avatar;
              }
            }
          } else {
            var avatar = '';
          }
          uni.setStorage({ //缓存配置信息
            key: 'avatar',
            data: avatar
          })
          uni.setStorage({ //缓存配置信息
            key: 'userinfo',
            data: res.data.data.userinfo
          })
          uni.setStorage({ //缓存配置信息
            key: 'config',
            data: res.data.data.config
          })
          uni.showModal({
            title: '温馨提示',
            content: res.data.msg,
            showCancel: false,
            confirmText: "确定",
            success: function(res) {
              if (res.confirm) {
                //_this.dyxx()
                uni.navigateBack();
              } else if (res.cancel) {

              }
            }
          });
        } else {
          uni.showToast({
            title: res.data.msg,
            icon: "none"
          });
        }

      },
      getuserinfo: function() {
        var this_ = this
        // wx登录
        wx.login({
          success(res) {
            if (res.code) {
              //发起网络请求
              var code = res.code
              // 获取微信用户信息
              wx.getUserInfo({
                success: function(res) {
                  this_.userinfowx = res.userInfo
                  this_.wxlogin()
                },
                fail: res => {
                  // 获取失败的去引导用户授权 
                }
              })

            } else {

            }
          }
        })
      },
      wxlogin() {
        var userinfowx = this.userinfowx
        var this_ = this
        uni.login({
          timeout: 10000,
          provider: 'weixin', //如果是uniapp，在这里需要标明平台的类型，支持的参数请查阅uniapp官网的uni.login()文档
          success: (res) => {
            //console.log(res);
            //登陆成功的回调
            uni.request({
              url: this.configs.webUrl + '/api/user/getOpenid',
              method: 'GET',
              data: {
                //token: uni.getStorageSync("userinfo").token,       //你的小程序的secret,  
                code: res.code //wx.login 登录成功后的code  
              },
              success: (cts) => {
                if (cts.data.code == 1) {
                  this_.openid = cts.data.data
                  uni.showModal({
                    title: '温馨提示',
                    content: '授权成功',
                    showCancel: false,
                    confirmText: "确定",
                    success: function(res) {
                      if (res.confirm) {
                        this_.opsdd()
                      } else if (res.cancel) {

                      }

                    }
                  });
                } else {
                  uni.showModal({
                    title: '温馨提示',
                    content: JSON.stringify(cts.data),
                    showCancel: false,
                    confirmText: "确定",
                    success: function(res) {
                      if (res.confirm) {
                        //uni.navigateBack();
                      } else if (res.cancel) {

                      }
                    }
                  });
                }
              },
              fail: (err1) => {
                console.log(err1);
                //失败的回调
              }
            });
          },
          fail: (err) => {
            //登陆失败的回调
          }
        })
      },
      opsdd() {
        this.userinfowx.openid = this.openid
        uni.setStorage({ //缓存配置信息
          key: 'userinfowx',
          data: this.userinfowx
        })
        uni.navigateTo({
          url: '/pages/login/loginwxxcx'
        })
      },
      Loginops() {
        var this_ = this
        uni.request({
          url: this.configs.webUrl + '/api/user/getphone',
          // url: 'https://dj.cyycopyright.com' +'/api/user/getphone',  
          method: 'GET',
          data: {
            nickName: this.userinfowx.nickName,
            gender: this.userinfowx.gender,
            avatarUrl: this.userinfowx.avatarUrl,
            openid: this.userinfowx.openid,
            pid: this.fxpid,
          },
          success: (cts) => {
            console.log(cts.data);
            if (cts.data.code == 1) {
              if (cts.data.data.userinfo.avatar) {
                var str = cts.data.data.userinfo.avatar;
                if (str.indexOf("data:image") != -1) {
                  var avatar = '';
                } else {
                  if (str.indexOf("http") != -1) {
                    avatar = cts.data.data.userinfo.avatar;
                  } else {
                    avatar = this.configs.imgUrl + cts.data.data.userinfo.avatar;
                  }
                }
              } else {
                var avatar = '';
              }
              uni.setStorage({ //缓存配置信息
                key: 'avatar',
                data: avatar
              })
              uni.setStorage({ //缓存配置信息
                key: 'userinfo',
                data: cts.data.data.userinfo
              })
              uni.setStorage({ //缓存配置信息
                key: 'config',
                data: cts.data.data.config
              })
              uni.showModal({
                title: '温馨提示',
                content: cts.data.msg,
                showCancel: false,
                confirmText: "确定",
                success: function(res) {
                  if (res.confirm) {
                    //this_.dyxx()
                    if (this_.fxpid > 0) {
                      uni.switchTab({
                        url: '/pages/client/member/index'
                      })
                    } else {
                      uni.navigateBack({
                        delta: 2
                      });
                    }

                  } else if (res.cancel) {

                  }
                }
              });
            } else {
              uni.showModal({
                title: '温馨提示',
                content: '网络错误 重新尝试一下',
                showCancel: false,
                confirmText: "确定",
                success: function(res) {
                  if (res.confirm) {
                    //uni.navigateBack();
                  } else if (res.cancel) {

                  }
                }
              });
            }

          },
          fail: (err1) => {
            console.log(err1);
            //失败的回调
          }
        });
      },
      onGetPhoneNumber(e) {
        
        console.log('ongephone最粗的e',e);
        var this_ = this
        if (!this.userinfowx) {
          uni.showModal({
            title: '温馨提示',
            content: '请先授权',
            showCancel: false,
            confirmText: "确定",
            success: function(res) {
              // this.getuserinfo()
            }
          });
          return false;
        }
        uni.login({
          timeout: 10000,
          provider: 'weixin', //如果是uniapp，在这里需要标明平台的类型，支持的参数请查阅uniapp官网的uni.login()文档
          success: (res) => {
            console.log('我是ongetphone里面重新获取的res',res); 
           
            uni.request({
              url: 'https://dj.cyycopyright.com' + '/api/user/getphone',
              method: 'GET',
              data: {
                nickName: this.userinfowx.nickName,
                gender: this.userinfowx.gender,
                avatarUrl: this.userinfowx.avatarUrl,
                openid: this.userinfowx.openid,
                pid: this.fxpid,
                code: res.code,
                iv: e.detail.iv,
                encryptedData: e.detail.encryptedData,

              },
              success: (cts) => {
                console.log(cts.data);
                if (cts.data.code == 1) {
                  if (cts.data.data.userinfo.avatar) {
                    var str = cts.data.data.userinfo.avatar;
                    if (str.indexOf("data:image") != -1) {
                      var avatar = '';
                    } else {
                      if (str.indexOf("http") != -1) {
                        avatar = cts.data.data.userinfo.avatar;
                      } else {
                        avatar = this.configs.imgUrl + cts.data.data.userinfo.avatar;
                      }
                    }
                  } else {
                    var avatar = '';
                  }
                  uni.setStorage({ //缓存配置信息
                    key: 'avatar',
                    data: avatar
                  })
                  uni.setStorage({ //缓存配置信息
                    key: 'userinfo',
                    data: cts.data.data.userinfo
                  })
                  uni.setStorage({ //缓存配置信息
                    key: 'config',
                    data: cts.data.data.config
                  })
                  uni.showModal({
                    title: '温馨提示',
                    content: cts.data.msg,
                    showCancel: false,
                    confirmText: "确定",
                    success: function(res) {
                      if (res.confirm) {
                        this_.dyxx()
                        uni.navigateBack({
                          delta: 2
                        });
                      } else if (res.cancel) {

                      }
                    }
                  });
                } else {
                  uni.showModal({
                    title: '温馨提示',
                    content: '网络错误 重新尝试一下',
                    showCancel: false,
                    confirmText: "确定",
                    success: function(res) {
                      if (res.confirm) {
                        //uni.navigateBack();
                      } else if (res.cancel) {

                      }
                    }
                  });
                }

              },
              fail: (err1) => {
                console.log(err1);
                //失败的回调
              }
            });
          },
          fail: (err) => {
            //登陆失败的回调
          },
        })
      }
    }
  }
</script>

<style>
  .content {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .header {
    width: 161rpx;
    height: 161rpx;
    background: rgba(63, 205, 235, 1);
    box-shadow: 0rpx 12rpx 13rpx 0rpx rgba(63, 205, 235, 0.47);
    border-radius: 50%;
    margin-top: 30rpx;
    margin-left: auto;
    margin-right: auto;
  }

  .header image {
    width: 161rpx;
    height: 161rpx;
    border-radius: 50%;
  }

  .list {
    display: flex;
    flex-direction: column;
    padding-top: 50rpx;
    padding-left: 70rpx;
    padding-right: 70rpx;
  }

  .list-call {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    height: 100rpx;
    color: #333333;
    border-bottom: 0.5px solid #e2e2e2;
  }

  .list-call .img {
    width: 40rpx;
    height: 40rpx;
  }

  .list-call .sl-input {
    flex: 1;
    text-align: left;
    font-size: 32rpx;
    margin-left: 16rpx;
  }

  .button-login {
    color: #FFFFFF;
    font-size: 34rpx;
    width: 470rpx;
    height: 100rpx;
    background: linear-gradient(-90deg, rgba(75, 196, 93, 1), rgba(188, 226, 158, 1));
    box-shadow: 0rpx 0rpx 13rpx 0rpx rgba(164, 217, 228, 0.2);
    border-radius: 50rpx;
    line-height: 100rpx;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 100rpx;
  }

  .button-login1 {
    color: #FFFFFF;
    font-size: 34rpx;
    width: 470rpx;
    height: 80rpx;
    background: linear-gradient(-90deg, rgba(75, 196, 93, 1), rgba(188, 226, 158, 1));
    box-shadow: 0rpx 0rpx 13rpx 0rpx rgba(164, 217, 228, 0.2);
    border-radius: 50rpx;
    line-height: 80rpx;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30rpx;
    color: #fff;
  }

  .button-hover {
    background: linear-gradient(-90deg, rgba(63, 205, 235, 0.8), rgba(188, 226, 158, 0.8));
  }

  .agreenment {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-size: 30rpx;
    margin-top: 80rpx;
    color: #FFA800;
    text-align: center;
    height: 40rpx;
    line-height: 40rpx;
  }

  .agreenment text {
    font-size: 24rpx;
    margin-left: 15rpx;
    margin-right: 15rpx;
  }
</style>